package com.ybwh.springboot1.dao;

import com.github.pagehelper.Page;
import com.ybwh.springboot1.model.po.User;
import com.ybwh.springboot1.model.vo.UserParamVo;

import org.apache.ibatis.annotations.Param;

public interface UserMapper {

	/**
	 * 根据 ID删除
	 * 
	 * @param id
	 * @return
	 */
	int deleteById(@Param("id") Long id);

	/**
	 * 插入
	 * 
	 * @param record
	 * @return
	 */
	int insert(User record);

	/**
	 * 根据id更新
	 * 
	 * @param record
	 * @return
	 */
	int updateById(User record);

	/**
	 * 根据用户名和密码查询
	 *
	 * @param username 用户名
	 * @param password 密码(可空)
	 * @return
	 */
	User selectUser(@Param("username") String username, @Param("password") String password);

	/**
	 * 分页查询
	 * 
	 * @param param    参数
	 * @param pageNum  页号
	 * @param pageSize 页大小
	 * @return
	 */
	Page<User> selectByPageNumSize(@Param("param") UserParamVo param, @Param("pageNum") int pageNum,
			@Param("pageSize") int pageSize);
}